package com.pactera.madp.cp.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.pactera.madp.common.core.util.R;
import com.pactera.madp.cp.api.dto.taskpublish.TaskAddDTO;
import com.pactera.madp.cp.api.dto.taskpublish.TaskQueryDTO;
import com.pactera.madp.cp.api.entity.taskpublish.TaskEntity;
import com.pactera.madp.cp.api.vo.taskpublish.TaskDetailVO;
import com.pactera.madp.cp.api.vo.taskpublish.TaskQueryVO;

import java.util.List;

/**
 * @date: 2021/8/10 11:21
 * @description:
 */
public interface ITaskPublishService extends IService<TaskEntity> {

    boolean createTask(TaskAddDTO taskAddDTO);

    R<Page<List<TaskQueryVO>>> pageQuery(Page page, TaskQueryDTO dto);

    boolean updateMediumById(TaskEntity entity);

    void saveMediaId();

    /**
     * 根据id保存mediumId
     * @param id
     * @return
     */
    boolean saveMediumById(Integer id);

    /**
     * 发送任务给成员
     * @param id
     */
    R sendTaskToChatGroup(Integer id);

    /**
     * 查看任务
     * @param id
     * @return
     */
    TaskDetailVO detailShow(Integer id);

    /**
     * 阅读统计
     * @param id
     * @return
     */
    R getTaskReadDetail(Integer id);

}
